﻿#ifndef __PAINTER_H__
#define __PAINTER_H__

#include <QObject>
#include <QPainter>

enum class PainterType
{
	PaintBorder,
	PaintShape,
	PaintSelect,
	PaintConnect,
};

class Painter : public QObject
{
protected:
	QPoint start_point;
	QPoint final_point;
public:
	explicit Painter(QObject* parent);
	virtual void paint(QPainter& painter) = 0;
	void setStart(const QPoint& point);
	void setFinal(const QPoint& point);
	QPoint getStart() const;
	QPoint getFinal() const;
};




#endif // !__PAINTER_H__
